====================本系列文章沒有什麼高深的理論====================
====================純粹是以一個菜雞的視角來分享====================
前面看到的算數運算子都是用來做「兩個數值」
的運算,所以我們接著來聊聊一元運算子(Unary Operator)。
簡單來說一元運算子就只需要「單個數值」
就能進行運算的運算子。
在只有單一個的時候,就跟以前學校教的一樣,代表數字的「正數」
以及「負數」
的狀態。
const bear = +100;
const dog = -100;
console.log(bear); // 100
console.log(dog); // -100
不過需要注意的點是,假如正號(+)
以及負號(-)
後面帶的不是一個數字型態的值,那麼JavaScript就會在背後先嘗試使用Number()進行轉型,再確認前面是帶正號(+
)或是負號(-)
來決定數值。
const bear = "+100";
const cat = "-100";
const hi = "Hello";
console.log(+bear); // 100
console.log(-bear); // -100
console.log(+cat); // -100
console.log(-cat); // 100
console.log(+hi); // NaN
console.log(-hi); // NaN
*而在物件型別的情形下,則是會先透過物件中的valueOf()方法來得到對應的數值,最後再依照正號(+)
或是負號(-)
來決定數值。
+true // 1 , true轉成數字會變成1
+false // 0, false轉成數字會變成0
+null // 0, null轉成數字會變成0
今日的分享就到這囉,我們明天見,掰掰!